python - 获取 Django 模型的主要字段的名称
全部标签 我想像数组一样按位置获取哈希值。例子:h=Hash["a"=>100,"b"=>200]在这个数组中,当我们调用h[0]时,它返回给定数组中的第一个元素。散列中可能有同样的事情吗?如果是,那又如何?提前致谢,普拉萨德。 最佳答案 如上所述,根据您的用例,您可以使用:h.keys[0]h.values[0]h.to_a[0]自Ruby1.9.1Hash保留插入顺序。如果您需要Ruby1.8兼容性,ActiveSupport::OrderedHash是一个不错的选择。 关于ruby-on-r
我想在rails的实例方法中更新属性,而不必被迫更改传入的参数,这样我就可以利用rails的自动属性。这是一个例子。理想:status="some_new_status"person.update(status)classPerson我现在要做的:classPerson我明白在这个例子中这并不重要。但是,当我有复杂的更新方法时,如果我可以删除其中的一些代码,它会更清晰。 最佳答案 你应该使用内置的Rails方法:@person.update_attribute(:status,"SomeValue")#nocallbacktrigg
目前我正在模型中执行以下操作:before_save:to_lowerbefore_create:to_lowerdefto_lowerself.name=self.name.downcaseend对我来说似乎很重复。 最佳答案 如果您已经有before_save,则不需要before_create。before_save{|user|user.name=user.name.downcase} 关于ruby-on-rails-在数据库中始终将字段设为小写的简单方法,我们在StackOve
所以这是上升的(1..5).to_a=>[1,2,3,4,5]但这不是(5..1).to_a=>[]我正在尝试从任意上限获取降序。谢谢。 最佳答案 试试这个:5.downto(1).to_a#=>[5,4,3,2,1]当然有相应的#upto。如果你想要步骤,你可以这样做:1.step(10,2).to_a#=>[1,3,5,7,9]10.step(1,-2).to_a#=>[10,8,6,4,2] 关于ruby-在Ruby中获取降序范围序列,我们在StackOverflow上找到一个类似
我有一个评论模型,允许对产品进行“1-10”评级系统。在我的表单View中,这是我在该字段中吐出1-10的下拉列表的方式...效果很好,但团队现在希望评级系统有0.5个小数,因此可以将某些内容评级为7.5、8.0、8.5等。然而,这让我感到难过...我如何才能在Ruby中更改上面的代码并遍历一组数字并将其递增0.5?(注意:是的,我已经将评分列从整数转换为float。) 最佳答案 你可以这样定义增量(0..10).step(0.5) 关于ruby-on-rails-RubyonRails
我知道我可以基于数组查询最近的书籍范围:recent_books,lambda{|since_dt|{:conditions=>{:created_at>=since_dt}}}但是当我有一组项目时,我该如何做一个类似的查询,例如如果我想知道是否有任何记录与[date1、date2、date3等]数组中的日期匹配我认为必须有一个collect/inject/select/mapy方法可以做到这一点,但我不确定是哪个方法。 最佳答案 如果您传递一个数组作为值,ActiveRecord足够智能,可以比较是否包含在数组中。例如,Book.
我有一个问题。在我的应用程序中,我使用的是rails_admingem。除了一件事,一切都很好。对于某些模型,我只想删除它们。有没有简单的方法可以做到这一点? 最佳答案 在您的rails_admin.rb文件中,您可以为您的模型添加默认操作,您可以添加异常(exception),如图所示here.这是一个例子:config.actionsdodashboard#mandatoryindex#mandatorynewdoexcept['SomeModel']endexportbulk_deleteshoweditdoexcept['S
当我对使用ruby的特定单词之间包含的文本感兴趣时,我想知道如何进行。例如。@var="Hi,Iwanttoextractcontainer_startONLYTHISDYNAMICCONTENTcontainer_endfromthemessagecontainedbetweenthecontainer_startandcontainer_end"现在我想从字符串中提取大写的内容,即动态但始终包含在两个容器中(container_start和container_end) 最佳答案 简单的正则表达式就可以:@var="Hi,Iw
如何读取Controller在before_save回调中设置的值?例子:我有一个带有url字段的模型。在保存之前,我想检查url是否已更改。如果是这样,请使用新旧网址做一些事情。这可能吗? 最佳答案 尝试这样的事情:before_save{|m|ifm.url_changed?...}另请参阅ActiveModel::Dirty上的文档 关于ruby-on-rails-如何检查模型的before_save回调中的修改值?,我们在StackOverflow上找到一个类似的问题:
我是RubyonRails的新手,我有一个带有“Set”模型的项目。这是在Rails2.3.2中。现在的问题是它根本找不到该模型类的任何方法。例如:“未定义的方法find'forSet:Class”或“undefinedmethoderrors'for#”。它似乎试图在Ruby“Set”类而不是我的模型类上找到那些方法。如果我可以像Module::Set这样写我的Set模型类的完全限定名称,它可能会起作用,但我不确定那会是什么。(是的,我真的想要设置我的模型名称。在我的应用程序上下文中,任何其他名称都会很尴尬)。有什么想法吗? 最佳答案